<html lang="en">
<h2>1.8.0</h2>
<ul>
    <li>
        New Inspections:
        <ul>
            <li><code>target</code> mapped more than once by <code>@Mapping</code> annotations with quick fixes: Remove annotation and change target property.</li>
            <li><code>*</code> used as a source in <code>@Mapping</code> annotations with quick fixes: Replace <code>*</code> with method parameter name.</li>
        </ul>
    </li>
    <li>Support Kotlin K2</li>
    <li>Fix incorrect no source property defined inspection for <code>@Mapping</code></li>
</ul>
<h2>1.7.0</h2>
<ul>
    <li>
        New Inspections:
        <ul>
            <li>No source defined in <code>@Mapping</code></li>
            <li>
                More than one source defined in <code>@Mapping</code>.
                Quick fixes:
                <ul>
                    <li>Remove <code>source</code></li>
                    <li>Remove <code>constant</code></li>
                    <li>Remove <code>expression</code></li>
                    <li>Use <code>constant</code> as <code>defaultValue</code></li>
                    <li>Use <code>expression</code> as <code>defaultExpression</code></li>
                </ul>

            </li>
            <li>
                More than one default source in <code>@Mapping</code>.
                Quick fixes:
                <ul>
                    <li>Remove <code>defaultValue</code></li>
                    <li>Remove <code>defaultExpression</code></li>
                </ul>
            </li>
        </ul>
    </li>
    <li>Align <code>@InheritConfiguration</code> with MapStruct core and support auto inheritance</li>
    <li>Support collection getters as viable target setter</li>
    <li>Support java text blocks for expression injection</li>
    <li>Support <code>Map&lt;String, ?&gt;</code>, as a valid mapping source</li>
    <li>Support fluent setters with super types (e.g. Lomboks <code>@SuperBuilder</code></li>
    <li>Align expression detection with MapStruct core</li>
    <li>Fix "Remove usage of Mappers factory" inspection ignoring component model defined in <code>@MapperConfig</code></li>
</ul>
<h2>1.6.1</h2>
<ul>
    <li>Add smart completion for target in <code>Mapping</code> (already mapped target are not proposed)</li>
    <li>Bug fix: Fix auto-completion for nested public fields</li>
    <li>Bug fix: Fix IndexOutOfBoundsException for target methods without parameter</li>
</ul>
<h2>1.6.0</h2>
<ul>
    <li>Support <code>@InheritConfiguration</code> for unmapped target properties inspection</li>
    <li>Use <code>unmappedTargetPolicy</code> for severity for unmapped target properties inspection</li>
    <li>Bug fix: Fix missing completion and go to declaration for <code>Mapping#qualifiedByName</code> in <code>MapperConfig</code></li>
    <li>Bug fix: Fix incorrect unmapped target property when using Mapping Composition within Mapping Composition</li>
    <li>Bug fix: Fix autocompletion for nested records</li>
    <li>Bug fix: Fix incorrect unmapped target property when <code>Mapping#target</code> contains a dot</li>
    <li>Bug fix: Fix incorrect unmapped target property with fluent setters</li>
</ul>
<h2>1.5.0</h2>
<ul>
    <li>Support for completion and go to declaration for <code>Mapping#qualifiedByName</code></li>
    <li>Adding unmapped target property quick fix should move cursor to source</li>
</ul>
<h2>1.4.0</h2>
<ul>
    <li>Support for Java records</li>
    <li>Support MapStruct explicit <code>Builder#disableBuilder</code> through <code>@MapperConfig</code></li>
    <li>Suppress redundant default parameter value assignment warning for <code>Mapping#constant</code> and <code>Mapping#defaultValue</code></li>
    <li><code>@ValueMapping</code> source code completion should only suggest unmapped source constants</li>
    <li>Bug fix: Language injections inside expressions when target is field</li>
    <li>Bug fix: Avoid a redundant variable warning when injecting a Java expression</li>
</ul>
<h2>1.3.1</h2>
<ul>
    <li>Improve language injections, especially for generics</li>
    <li>Bug fix: Crash in case using static constant in target field of <code>@Mapping</code> annotation</li>
</ul>
<h2>1.3.0</h2>
<ul>
    <li>Support code completion in <code>BeanMapping#ignoreUnmappedSourceProperties</code></li>
    <li>Support MapStruct explicit <code>Builder#disableBuilder</code> through <code>@BeanMapping</code> or <code>@Mapper</code></li>
    <li>Quick Fix: support for configuring the order of source and target in <code>@Mapping</code> for "Add unmapped property" fix</li>
    <li>Bug fix: Code completion for generic builder</li>
    <li>Bug fix: Code completion uses build constructor parameters</li>
</ul>
<h2>1.2.4</h2>
<ul>
    <li>Add plugin icon</li>
    <li>Kotlin: Use UAST instead of Kotlin plugin specific APIs</li>
    <li>Bug fix: Missing type information in auto complete for source parameters and value mappings</li>
</ul>
<h2>1.2.3</h2>
<ul>
    <li>Kotlin: Code completion for <code>target</code> and <code>source</code> in <code>@Mapping</code> and <code>@ValueMapping</code></li>
    <li>Bug fix: False positive unmapped target property for multi source methods</li>
</ul>
<h2>1.2.2</h2>
<ul>
    <li>Support for mapping nested bean properties to current target</li>
    <li>Support <code>@BeanMapping#ignoreByDefault</code> for the unmapped target properties inspection</li>
    <li>Bug fix: ClassCastException in language injection in expressions</li>
</ul>
<h2>1.2.1</h2>
<ul>
    <li>Support code completion in Mapping#expression and Mapping#defaultExpression</li>
    <li>Support meta annotations for when looking for unmapped target properties</li>
    <li>Bug fix: public static fields / methods should not be considered as unmapped properties or resolved in auto completion</li>
</ul>
<h2>1.2.0</h2>
<ul>
    <li>Support for public fields (auto-completion and unmapped target / source inspection warnings)</li>
    <li>Support for constructor auto-completion (find usages and renaming of constructor fields doesn't work yet)</li>
    <li>Quick Fix: Add ignore all unmapped target properties</li>
    <li>Bug fix: Correctly resolve fluent Boolean accessor</li>
    <li>Bug fix: Only treat public non-static getters and setters as accessors</li>
</ul>
<h2>1.1.1</h2>
<ul>
    <li>Bug fix: MissingMapperOrMapperConfigAnnotationInspection should only check class defined methods</li>
    <li>Bug fix: UnmappedTargetProperties inspection should only check abstract methods</li>
</ul>
<h2>1.1.0</h2>
<ul>
    <li>Support for types with Builders and fluent setters</li>
    <li>
Added errors and quick fixes:
<ul>
    <li><code>@Mapper</code> or <code>@MapperConfig</code> annotation missing</li>
    <li>Unmapped target properties and quick fixes for it: Add unmapped property or Ignore unmapped property.
        NB: <code>unmappedTargetPolicy</code> is not yet considered</li>
</ul>
    </li>
</ul>
<h2>1.0.1</h2>
<ul>
    <li>Bug fix: Properly handle methods with less than 3 characters</li>
</ul>
<h2>1.0.0</h2>
<ul>
    <li>Initial version</li>
    <li>Code completion for <code>target</code> and <code>source</code> in <code>@Mapping</code> and <code>@ValueMapping</code></li>
    <li>Code completion for <code>componentModel</code> in <code>@Mapper</code> and <code>@MapperConfig</code></li>
    <li>Go To Declaration for properties in <code>target</code> and <code>source</code> to setters / getters</li>
    <li>Find usages of properties in <code>target</code> and <code>source</code> and find usages of setters / getters in <code>@Mapping</code> annotations</li>
    <li>Highlighting properties in <code>target</code> and <code>source</code></li>
    <li>Refactoring support for properties and methods renaming</li>
</ul>
</html>
